iT邦幫忙

2021 iThome 鐵人賽

DAY 16
0
Software Development

C# 入门系列 第 16

C# 入门 SSH 连接

  • 分享至 

  • xImage
  •  

对于熟悉 Python 的人,应该了解 Python 之所以简单,易学,是因为包含了很多第三方的库。

同样 C# 也有一些很有用的库,今天我们来看一个 C# 的库,通过该库,你可以实现 ssh 的连接,以及一些通过 ssh 的操作,比如上传下载文件,等等。

这个库叫做 SSH.NET,你可以在这里找到相关源码:

sshnet/SSH.NET: SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism. (github.com)

首先我们来看一下,怎么在 visual studio 2019 上面添加库的软件包。
打开 visual studio 2019,新建一个 console application,然后右击右边 Solution 框中的 “Dependencies”,选择 “Manage NuGet Package”,然后在左边的 NuGet 窗口,选择 Browse 窗口中,输入 “ssh.net", 找到 SSH.NET,点击安装图标,进行下载安装(你可以在 Installed 窗口,验证安装):
https://ithelp.ithome.com.tw/upload/images/20210918/200994943uPhWsvU91.png

安装完成后,就可以来编写我们的代码了:

using System;
using Renci.SshNet;

namespace ssh
{
    class Program
    {
        static void Main(string[] args)
        {
            ConnectionInfo conInfo = new ConnectionInfo("192.168.1.12", 22, "test", new AuthenticationMethod[]    // ssh 的连接信息
            {
               // ssh 连接的用户名密码
               new PasswordAuthenticationMethod("test", "Shanghai2010")  
            });

            using (SshClient client = new SshClient(conInfo))   //  创建一个连接
            {
                client.Connect();         // 建立连接
                var ouput = client.RunCommand("ls -l");   // 输入需要运行的命令,并赋值给一个变量
                Console.WriteLine(ouput.Result.ToString());  // 调用 Result 属性,输出命令结果
                client.Disconnect();        // 断开连接
            }
        }
    }
}

运行结果:
https://ithelp.ithome.com.tw/upload/images/20210918/20099494aqBebep78N.png


上一篇
C# 入门之字符串处理
下一篇
C# 入门之处理用户的输入
系列文
C# 入门32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言